package utility;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 正则表达式演示
 * @author fidel
 */
public class PatternDemo {
    public static void main(String[] args) {
        // 构建正则表达式字符串，以^开头，以$结尾
        String regex = "^1[3,5,7,8,9]{1}\\d{9}$";
        System.out.println("输入11位移动电话号码");
        Scanner input = new Scanner(System.in);
        String value = input.next();
        // 编译字符串表达式，构造正则表达式实例
        Pattern pattern = Pattern.compile(regex);
        // 根据要匹配的字符序列，获取正则表达式的匹配器
        Matcher matcher = pattern.matcher(value);
        if (!matcher.matches()) {
            System.out.println("输入的移动电话号码不符合要求");
        }
        /*
         * 构建电子信箱地址表达式字符串
         * “.”在正则表达式字符串中表示任意字符
         * 须使用双反斜杠“\\”作前缀或小括号“()”引用，才表示句点“.”
         */
        // regex = "^\\w{1,}@\\w{1,}(.)(\\p{Lower}){1,}$";
        regex = "^\\w{1,}@\\w{1,}\\.(\\p{Lower}){1,}$";
        pattern = Pattern.compile(regex);
        System.out.println("输入电子信箱地址");
        value = input.next();
        input.close();
        matcher = pattern.matcher(value);
        if (!matcher.matches()) {
            System.out.println("输入的电子信箱地址不符合要求");
        }
    }
}
